<?php
class Pm_w
{
    public static function __index( $room_id , $user_id , $put_id , $card_number , $db_connect ){
        //取出房间信息
        $room_info    = $db_connect->select('*')->from('tt_room')->where("room_id= '". $room_id ."' ")->row();
        //遍历所有人，查找是否还有人能吃这个牌;
        $is_chi = 0;
        foreach( $room_info as $key => $value ){
            if( strstr($key,'_is_chi') != false && $value == 1 ){
                $is_chi = 1;break;
            }
        }
        //添加一个pass过章子记录(注意：碰牌点过，自己能吃不吃也属于过章)
        PHZ_Card::__set_UserPass_CHI_PENG_HU( $room_info , $user_id , $card_number , $db_connect );
        //取消所有人的碰操作;如果取消碰的人，还有自己还有吃的状态，也要一起取消(意思是同时能碰吃的人)
        $db_connect->update('tt_room')->cols( array('p1_is_peng'=>0,'p2_is_peng'=>0,'p3_is_peng'=>0,'p4_is_peng'=>0) )->where('room_id=' . $room_id )->query();
        foreach( $room_info as $key => $value ){
            if( strstr($key,'_is_peng') != false && $value == 1 ){
                $temp_pname = str_replace('_is_peng','', $key );
                if( $room_info[$temp_pname . '_is_chi'] == 1 ){
                    $is_chi = 0;
                    $db_connect->update('tt_room')->cols( array( $temp_pname . '_is_chi' =>0) )->where('room_id=' . $room_id )->query();
                }
            }
        }
        //进行所有人的log广播信息
        $temp = array();
        $temp['pl']          = 6;//6为用户取消碰牌
        $temp['card_number'] = $card_number;//牌号
        $temp['put_uid']     = 0;//全部人丧失出牌权
        $temp['mop_uid']     = 0;//全部人丧失摸牌权
        $temp['is_peng']     = 0;//没人碰了，碰的人已经取消了
        $temp['is_chi']      = $is_chi;//当前人是否处于等待吃牌状态？
        $temp['fail_uid']    = $user_id;//取消人UID
        PHZ_Log::__send_user_log( $room_info , $put_id , $temp , $db_connect );
        //设置出牌权
        PHZ_Room::__setThisPutUser( $room_info['room_id'] , 0 , $db_connect );
        //是否还有人能吃？如果有人能吃，则等待吃的人操作；
        if( $is_chi == 1 ){
            return true;
        }
        //否则则进行下家自动摸牌操作;
        PM_n::__index( $room_info , $put_id , 1 , $db_connect , $put_id , 0  );
    }
}